home *** CD-ROM | disk | FTP | other *** search
/ Informática Multimedia 1995 April / Informatica Multimedia CD - Epimundo.iso / WIN / CDROM / HITLINE3.ZIP / HITLINE.MST < prev    next >
Encoding:
Text File  |  1994-06-20  |  5.5 KB  |  224 lines

  1. '******************************************
  2. '* Hitline fⁿr Windows 3.0
  3. '* ----------------------------------------
  4. '* (c) by BIG 3 Software
  5. '******************************************
  6.  
  7. '$DEFINE DEBUG  ''Define for script development/debugging
  8.  
  9. '$INCLUDE 'setupapi.inc'
  10. '$INCLUDE 'msdetect.inc'
  11.  
  12. ''Dialog ID's
  13. CONST WELCOME       = 100
  14. CONST ASKQUIT       = 200
  15. CONST DESTPATH      = 300
  16. CONST EXITFAILURE   = 400
  17. CONST EXITQUIT      = 600
  18. CONST EXITSUCCESS   = 700
  19. CONST OPTIONS       = 800
  20. CONST APPHELP       = 900
  21. CONST BADPATH       = 6400
  22. CONST MODELESS      = 5000
  23.  
  24. ''Bitmap ID
  25. CONST LOGO = 1
  26.  
  27. GLOBAL DEST$        ''Default destination directory.
  28. GLOBAL OPTCUR$      ''Option selection from option dialog.
  29.  
  30. DECLARE SUB UnloadAll
  31. DECLARE SUB Install
  32. DECLARE FUNCTION MakePath (szDir$, szFile$) AS STRING
  33.  
  34. DECLARE FUNCTION Ctl3dAutoSubclass LIB "Ctl3d.dll" (hInst%) AS INTEGER
  35. DECLARE FUNCTION Ctl3dRegister LIB "Ctl3d.dll" (hInst%) AS INTEGER
  36. DECLARE FUNCTION Ctl3dUnregister LIB "Ctl3d.dll" (hInst%) AS INTEGER
  37. DECLARE FUNCTION ShowWindow LIB "user" (hWnd%, nShow%) AS INTEGER
  38.  
  39. INIT:
  40.     dummy% = ShowWindow (hwndFrame, 3)   '' 3 = SW_SHOWMAXIMIZED
  41.  
  42.     CUIDLL$ = "mscuistf.dll"            ''Custom user interface dll
  43.     HELPPROC$ = "FHelpDlgProc"          ''Help dialog procedure
  44.  
  45.     SetBitmap CUIDLL$, LOGO
  46.     SetTitle "Hitline Setup"
  47.  
  48.     szInf$ = GetSymbolValue("STF_SRCINFPATH")
  49.     IF szInf$ = "" THEN
  50.         szInf$ = GetSymbolValue("STF_CWDDIR") + "Hitline.INF"
  51.     END IF
  52.     ReadInfFile szInf$
  53.  
  54.     OPTCUR$ = "1"
  55.     DEST$ = "C:\Hitline"
  56.  
  57. '$IFDEF DEBUG
  58.     i% = SetSizeCheckMode(scmOnIgnore)    '' could use scmOff; def = scmOnFatal
  59.  
  60.     ret% = Ctl3dRegister (HinstFrame())     '' Here comes the 3D-Look!
  61.     ret% = Ctl3dAutoSubclass (HinstFrame())
  62.  
  63.     ON END UnloadAll                          '' Unregister Ctl3d-Classing
  64.  
  65.     WinDrive$ = MID$(GetWindowsDir, 1, 1)
  66.     IF IsDriveValid(WinDrive$) = 0 THEN
  67.         i% = DoMsgBox("Windows drive ('"+WinDrive$+"') is not a valid drive.", "DEBUG", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  68.         GOTO QUIT
  69.     END IF
  70. '$ENDIF ''DEBUG
  71.  
  72.  
  73. WELCOME:
  74.     sz$ = UIStartDlg(CUIDLL$, WELCOME, "FInfoDlgProc", APPHELP, HELPPROC$)
  75.     IF sz$ = "CONTINUE" THEN
  76.         UIPop 1
  77.     ELSE
  78.         GOSUB ASKQUIT
  79.         GOTO WELCOME
  80.     END IF
  81.  
  82.  
  83. OPTION:
  84. 'Entfernt!!!!!!!!!!!!!!!!!!!!!!!!!!!
  85.  
  86.  
  87. GETPATH:
  88.     SetSymbolValue "EditTextIn", DEST$
  89.     SetSymbolValue "EditFocus", "END"
  90. GETPATHL1:
  91.     sz$ = UIStartDlg(CUIDLL$, DESTPATH, "FEditDlgProc", APPHELP, HELPPROC$)
  92.     DEST$ = GetSymbolValue("EditTextOut")
  93.  
  94.     IF sz$ = "CONTINUE" THEN
  95.         IF IsDirWritable(DEST$) = 0 THEN
  96.             GOSUB BADPATH
  97.             GOTO GETPATHL1
  98.         END IF
  99.         UIPop 1
  100.     ELSEIF sz$ = "REACTIVATE" THEN
  101.         GOTO GETPATHL1
  102.     ELSEIF sz$ = "BACK" THEN
  103.         UIPop 1
  104.         GOTO OPTION
  105.     ELSE
  106.         GOSUB ASKQUIT
  107.         GOTO GETPATH
  108.     END IF
  109.  
  110.  
  111.     Install
  112.  
  113.  
  114. QUIT:
  115.     UIPop 1
  116.     
  117.     ON ERROR GOTO ERRQUIT
  118.  
  119.     IF ERR = 0 THEN
  120.         dlg% = EXITSUCCESS
  121.     ELSEIF ERR = STFQUIT THEN
  122.         dlg% = EXITQUIT
  123.     ELSE
  124.         dlg% = EXITFAILURE
  125.     END IF
  126. QUITL1:
  127.     sz$ = UIStartDlg(CUIDLL$, dlg%, "FInfo0DlgProc", 0, "")
  128.     IF sz$ = "REACTIVATE" THEN
  129.         GOTO QUITL1
  130.     END IF
  131.     UIPop 1
  132.  
  133.     END
  134.  
  135. ERRQUIT:
  136.     i% = DoMsgBox("Setup Dateien sind defekt!", "Setup Meldung", MB_OK+MB_TASKMODAL+MB_ICONHAND)
  137.     END
  138.  
  139.  
  140.  
  141. BADPATH:
  142.     sz$ = UIStartDlg(CUIDLL$, BADPATH, "FInfo0DlgProc", 0, "")
  143.     IF sz$ = "REACTIVATE" THEN
  144.         GOTO BADPATH
  145.     END IF
  146.     UIPop 1
  147.     RETURN
  148.  
  149.  
  150.  
  151. ASKQUIT:
  152.     sz$ = UIStartDlg(CUIDLL$, ASKQUIT, "FQuitDlgProc", 0, "")
  153.  
  154.     IF sz$ = "EXIT" THEN
  155.         UIPopAll
  156.         ERROR STFQUIT
  157.     ELSEIF sz$ = "REACTIVATE" THEN
  158.         GOTO ASKQUIT
  159.     ELSE
  160.         UIPop 1
  161.     END IF
  162.     RETURN
  163.  
  164.  
  165.  
  166. '**
  167. '** Purpose:
  168. '**     Builds the copy list and performs all installation operations.
  169. '** Arguments:
  170. '**     none.
  171. '** Returns:
  172. '**     none.
  173. '*************************************************************************
  174. SUB Install STATIC
  175.  
  176.     SrcDir$ = GetSymbolValue("STF_SRCDIR")
  177.     CreateDir DEST$, cmoNone
  178.  
  179.     AddSectionFilesToCopyList "Files", SrcDir$, DEST$
  180.  
  181.     CUIDLL$ = "mscuistf.dll"            ''Custom user interface dll
  182.     
  183.     sz$ = UIStartDlg(CUIDLL$, MODELESS, "FModelessDlgProc", 0, "")
  184.     
  185.     SetCopyGaugePosition -1, 170
  186.     CopyFilesInCopyList
  187.  
  188.     UIPop 1
  189.  
  190.     ini$ = MakePath(DEST$, "Hitline.exe")    
  191.     CreateProgmanGroup "Hitline", "", cmoNone
  192.     ShowProgmanGroup  "Hitline", 1, cmoNone
  193.     CreateProgmanItem "Hitline", "Hitline", ini$, "", cmoOverwrite
  194.  
  195. END SUB
  196.  
  197.  
  198.  
  199. '**
  200. '** Purpose:
  201. '**     Appends a file name to the end of a directory path,
  202. '**     inserting a backslash character as needed.
  203. '** Arguments:
  204. '**     szDir$  - full directory path (with optional ending "\")
  205. '**     szFile$ - filename to append to directory
  206. '** Returns:
  207. '**     Resulting fully qualified path name.
  208. '*************************************************************************
  209. FUNCTION MakePath (szDir$, szFile$) STATIC AS STRING
  210.     IF szDir$ = "" THEN
  211.         MakePath = szFile$
  212.     ELSEIF szFile$ = "" THEN
  213.         MakePath = szDir$
  214.     ELSEIF MID$(szDir$, LEN(szDir$), 1) = "\" THEN
  215.         MakePath = szDir$ + szFile$
  216.     ELSE
  217.         MakePath = szDir$ + "\" + szFile$
  218.     END IF
  219. END FUNCTION
  220.  
  221. Sub UnloadAll STATIC
  222.     ret% = Ctl3dUnregister(HinstFrame())
  223. END SUB
  224.